Enum এর ব্যবহার এবং সিনট্যাক্স

Java Technologies - Java.lang প্যাকেজ (Java.lang Package) - Enum এবং Enum Class
245

Java 5 থেকে Enum (এনাম) ক্লাস Java ভাষায় যুক্ত করা হয়েছে। এটি একটি বিশেষ ক্লাস যা পূর্বনির্ধারিত এবং সীমিত মানের একটি গ্রুপকে প্রতিনিধিত্ব করে। Enum ক্লাসটি প্রাথমিকভাবে স্থিতিশীল, নির্দিষ্ট মানের একটি সেট (যেমন, সপ্তাহের দিন, মাস, ট্রাফিক সিগনাল ইত্যাদি) নির্ধারণ করার জন্য ব্যবহৃত হয়।

Enum ক্লাসের মূল সুবিধা হল:

  • কোডকে আরও পাঠযোগ্য এবং রক্ষণাবেক্ষণযোগ্য করে তোলে।
  • ভ্যালিডেশন সহজ করে, কারণ প্রাক-নির্ধারিত মানগুলির বাইরে আর কোনো মান দেওয়া সম্ভব হয় না।
  • switch কেস স্টেটমেন্টে enum ব্যবহার করা খুব সহজ।

Enum এর সিনট্যাক্স

Java তে Enum ডিফাইন করার জন্য একটি নতুন enum কিওয়ার্ড ব্যবহার করা হয়। এর সাদৃশ্য সাধারণ ক্লাস ডিফাইন করার মতোই, তবে কিছু বিশেষত্ব রয়েছে। enum এর মধ্যে কেবলমাত্র সুনির্দিষ্ট মান থাকতে পারে।

বেসিক Enum সিনট্যাক্স:

enum EnumName {
    CONSTANT_1, CONSTANT_2, CONSTANT_3; // enum constants
}

Enum উদাহরণ:

public enum Day {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}

public class EnumExample {
    public static void main(String[] args) {
        // Accessing enum constants
        Day today = Day.MONDAY;
        
        // Using switch case with enum
        switch (today) {
            case MONDAY:
                System.out.println("Start of the week!");
                break;
            case FRIDAY:
                System.out.println("End of the week!");
                break;
            default:
                System.out.println("Middle of the week.");
        }
    }
}

Output:

Start of the week!

Enum এর কিছু গুরুত্বপূর্ণ বৈশিষ্ট্য এবং ব্যবহার

1. Enum Constants

  • Enum constants হল immutable এবং static
  • একবার enum constant ডিফাইন হলে, তাদের মান পরিবর্তন করা সম্ভব নয়।

2. Methods in Enum

  • Enum ক্লাসে সাধারণ ক্লাসের মতো মেথড এবং কনস্ট্রাক্টর থাকতে পারে।
  • আপনি values() এবং valueOf() এর মতো মেথড ব্যবহার করতে পারেন যা enum এর সাথে সম্পর্কিত কাজ সহজ করে।

3. values() Method

  • values() মেথড একটি অ্যারে রিটার্ন করে, যা enum এর সমস্ত কনস্ট্যান্ট ধারণ করে।

উদাহরণ:

public enum Day {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}

public class EnumExample {
    public static void main(String[] args) {
        // Using values() method to loop through enum constants
        for (Day day : Day.values()) {
            System.out.println(day);
        }
    }
}

Output:

MONDAY
TUESDAY
WEDNESDAY
THURSDAY
FRIDAY
SATURDAY
SUNDAY

4. valueOf() Method

  • valueOf() মেথডটি একটি স্ট্রিং প্যারামিটার নিয়ে, সে স্ট্রিংয়ের মানের সাথে মেলে এমন enum constant রিটার্ন করে।

উদাহরণ:

public class EnumExample {
    public static void main(String[] args) {
        Day today = Day.valueOf("MONDAY");
        System.out.println("Today is: " + today);
    }
}

Output:

Today is: MONDAY

5. Adding Fields and Methods to Enums

  • আপনি enum constants এর সাথে অতিরিক্ত fields এবং methods যুক্ত করতে পারেন।

উদাহরণ:

public enum Day {
    MONDAY("Start of the week"), 
    TUESDAY("Second day"),
    WEDNESDAY("Middle of the week"),
    THURSDAY("Almost weekend"),
    FRIDAY("End of the work week"),
    SATURDAY("Weekend"),
    SUNDAY("Rest day");

    private String description;

    // Constructor
    Day(String description) {
        this.description = description;
    }

    public String getDescription() {
        return description;
    }
}

public class EnumExample {
    public static void main(String[] args) {
        for (Day day : Day.values()) {
            System.out.println(day + ": " + day.getDescription());
        }
    }
}

Output:

MONDAY: Start of the week
TUESDAY: Second day
WEDNESDAY: Middle of the week
THURSDAY: Almost weekend
FRIDAY: End of the work week
SATURDAY: Weekend
SUNDAY: Rest day

6. Enum with Switch Statement

  • enum ব্যবহার করে switch statement খুবই কার্যকরী, কারণ প্রতিটি enum কনস্ট্যান্ট একটি distinct মান ধারণ করে যা switch কেসের মধ্যে ব্যবহার করা যায়।

উদাহরণ:

public enum Day {
    MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY;
}

public class EnumSwitchExample {
    public static void main(String[] args) {
        Day today = Day.MONDAY;

        switch (today) {
            case MONDAY:
                System.out.println("Start of the week!");
                break;
            case FRIDAY:
                System.out.println("End of the week!");
                break;
            case SATURDAY:
            case SUNDAY:
                System.out.println("Weekend!");
                break;
            default:
                System.out.println("Mid-week!");
        }
    }
}

Output:

Start of the week!

Enum এর ব্যবহার ক্ষেত্রসমূহ:

  • Fixed set of constants: যেমন সপ্তাহের দিন, মাসের নাম, বা HTTP status code গুলি।
  • State representation: প্রোগ্রামে একটি স্থিতি বা অবস্থা (যেমন: ট্রাফিক লাইটের রং) প্রতিনিধিত্ব করার জন্য।
  • Switch Statements: enum সাধারণত switch স্টেটমেন্টের মধ্যে ব্যবহৃত হয়, যেখানে একাধিক ক্ষেত্রে নির্দিষ্ট মানের উপর ভিত্তি করে লজিক করা হয়।

Enum ক্লাস Java-র একটি শক্তিশালী বৈশিষ্ট্য যা predefined constants গুলি পরিচালনা করার জন্য ব্যবহৃত হয়। এটি আপনার কোডে নিরাপত্তা, পাঠযোগ্যতা, এবং ম্যানটেনেবিলিটি বাড়ায়। যখন আপনার কোডে fixed set of values থাকে, তখন Enum একটি খুবই কার্যকরী এবং সুবিধাজনক উপায় হয়ে ওঠে।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...